home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / misc / emu / ATUtilities.lha / ATUtilities / BASIC / VESASHOW.BAS < prev    next >
Encoding:
BASIC Source File  |  2000-09-26  |  1.6 KB  |  124 lines

  1. $INCLUDE "REGNAMES.INC"
  2. DEFINT a-Z
  3.  
  4. REG %AX,(6*256)
  5. CALL INTERRUPT &H49
  6. janus=REG(%DI)
  7. IF di=-1 THEN
  8.  ?"FEHLER: Janus"
  9.  END
  10. END IF
  11.  
  12. n$="CC:Prgs/F11.cdat"+CHR$(0)
  13. DEF SEG = &HD400
  14. FOR i=1 TO LEN(n$)
  15.  POKE janus+i-1,ASC(MID$(n$,i,1))
  16. NEXT
  17. REG %AX,0
  18. REG %BX,1
  19. CALL INTERRUPT &H49
  20. file.okay=REG(%AX)
  21. file.fh=REG(%BX)
  22. IF file.okay<>10000 THEN
  23.  ?"FEHLER: File"
  24.  END
  25. END IF
  26.  
  27. ON BREAK GOTO ende
  28.  
  29. SOUND 2000,4
  30.  
  31. REG %AX,(&H4F*256)+2
  32. REG %BX,&H103
  33. CALL INTERRUPT &H10
  34.  
  35. rem goto bb
  36. q=255
  37. for i=255 to 200 step -1
  38.  r=0
  39.  g=q
  40.  b=0
  41.  q=q-2
  42.  REG %CX,(g*256)+b
  43.  REG %DX,(r*256)
  44.  REG %AX,(&H10*256)+&H10
  45.  REG %BX,i
  46.  CALL INTERRUPT &H10
  47. next
  48. q=255
  49. for i=199 to 50 step -1
  50.  r=q
  51.  g=q
  52.  b=0
  53.  q=q-2
  54.  REG %CX,(g*256)+b
  55.  REG %DX,(r*256)
  56.  REG %AX,(&H10*256)+&H10
  57.  REG %BX,i
  58.  CALL INTERRUPT &H10
  59. next
  60. q=255
  61. for i=49 to 1 step -1
  62.  r=0
  63.  g=0
  64.  b=q
  65.  q=q-2
  66.  REG %CX,(g*256)+b
  67.  REG %DX,(r*256)
  68.  REG %AX,(&H10*256)+&H10
  69.  REG %BX,i
  70.  CALL INTERRUPT &H10
  71. next
  72. bb:
  73. beep
  74.  
  75. REG %AX,2*256
  76. REG %BX,file.fh
  77. REG %CX,8
  78. CALL INTERRUPT &H49
  79.  
  80. REG %AX,2*256
  81. REG %BX,file.fh
  82. REG %CX,16384
  83. CALL INTERRUPT &H49
  84. bytes=REG(%BX)
  85. p&=0 : s=0
  86. WHILE bytes>0
  87.  
  88.  REG %BX,&HA000
  89.  REG %DX,p&
  90.  REG %CX,bytes
  91.  REG %AX,5*256
  92.  CALL INTERRUPT &H49
  93.  
  94.  p&=p&+bytes
  95.  
  96.  IF p&>65535 THEN
  97.   s=s+1
  98.   REG %AX,(&H4F*256)+5
  99.   REG %BX,0
  100.   REG %DX,s
  101.   CALL INTERRUPT &H10
  102.   p&=0
  103.  END IF
  104.  REG %AX,2*256
  105.  REG %BX,file.fh
  106.  REG %CX,16384
  107.  CALL INTERRUPT &H49
  108.  bytes=REG(%BX)
  109. WEND
  110.  
  111. ende:
  112. IF file.okay=10000 THEN
  113.  REG %AX,1*256
  114.  REG %BX,file.fh
  115.  CALL INTERRUPT &H49
  116. END IF
  117. BEEP
  118.  
  119. WHILE INKEY$="":WEND
  120. SCREEN 0
  121. CLS
  122. ?"<< Taste >>"
  123. END
  124.